Method and system for analyzing multi-dimensional data

ABSTRACT

Disclosed is a method for analyzing a sequence of data arrays. A selection of at least one type of region of interest and at least one region of interest from said data arrays is made. The sequence of data arrays are then transformed into a simplified data array. Events of interest in the selected regions of interest are then detected and stored in a second simplified data array. The data is then analyzed to determine relationships between the detected events of interest

RELATED APPLICATION

[0001] This application claims priority from U.S. provisionalapplication No. 60/214,914 filed on Jun. 29, 2000, which is incorporatedby reference herein in its entirety

BACKGROUND OF INVENTION

[0002] The present invention relates to analyzing and interpretingmulti-dimensional datasets. Examples of such datasets include opticalrecordings of neuronal cell slice fluorescenceand differences inexpression levels of multiple genes within a population of patients orsubjects.

[0003] It is often desirable to understand the relationship of variousevents occurring within such a multidimensional dataset. For example,various neurons in a neuronal cell slice may exhibit spontaneousactivity in a time series of optical images. It would be desirable todetermine which, if any, group of neurons were ever coactive (i.e.active at the same time or at specifiec different times), were regularlycoactive (i.e. coactive at multiple times over the period ofobservation), and which neuron, if any, consistently activates before orafter another neuron activates. It would also be advantageous to knowthe statistical significance of the relationships between the variousevents. In other words, whether the correlation among the various eventsis stronger than would be expected from random activity.

SUMMARY OF THE INVENTION

[0004] These and other advantages are achieved by the present inventionwhich provides a method and system for analyzing a multidimensionaldataset and for detecting relationships between various events reflectedin the dataset.

[0005] In an exemplary embodiment, a method is presented for analyzing asequence of data arrays including selecting at least one type of regionof interest and at least one region of interest for each type of regionof interest chosen from said data arrays, and transforming the sequenceof data arrays into a simplified data array with a first dimension equalto the number of selected regions of interest and a second dimensionequal to the number of data arrays in the original sequence of dataarrays. The simplified data array is then examined to detect events ofinterest in the regions of interest, and those events of interest arestored in a second simplified data array having the same dimensions asthe first simplified data array, but the data in each element of thearray is binary. The second simplified array is then analyzed todetermine relationships between the events of interest andcorrespondingly, the regions of interest.

[0006] In one exemplary embodiment, analyzing includes plotting aportion or all of the data in the first simplified array to allow visualexamination of the relationships between the activities of interest invarious regions of interest. In another exemplary embodiment, theanalysis step involves detecting events of interest that are coactiveand determining whether the number of coactive events is statisticallysignificant. This embodiment may include detecting all such coactiveevents (i.e. events where at least two regions of interest are activesimultaneously), detecting instances where many regions of interest arecoactive simultaneously, or detecting instances where two or moreregions of interest are each active in a certain temporal relationshipwith respect to ont another (also referred to as coactivity).

[0007] In a further exemplary embodiment, the data analysis involvescalculating a correlation coefficient between two regions of interestbased on how often the regions of interest are coactive relative to howoften the first region is active. A map of all such regions is displayedwith lines between the regions having a thickness proportional to thecorrelation coefficient between the two regions.

[0008] Another exemplary embodiment includes plotting across-correlogram or histogram of events of interest in a particularregion of interest with respect to events of interest in another regionof interest, so that the histogram will reveal the number of times anevent of interest in the first region of interest occurs a certainnumber of locations away from an event of interest in the second regionof interest in the second simplified data array. The cross-correlogramcan be plotted with respect to one region of interest, thus showing howmany times an event of interest occurs before or after the occurance ofanother event of interest in the same region of interest.

[0009] Other exemplary embodiments include performing Hidden MarkovModeling on the second simplified data array to determine a hiddenMarkov state sequence and displaying a cross-correlogram between eventsof interest occurring in one region of interest while that region is inone of the detected Markov states and performing a singular valuedecomposition on the first simplified data array.

BRIEF DISCRIPTION OF THE DRAWINGS

[0010] For a more complete understanding of the present invention,reference is made to the following detailed description of a exemplaryembodiments with reference to the accompanying drawings in which:

[0011]FIG. 1 illustrates a flow diagram of a method in accordance withthe present invention;

[0012]FIG. 2 illustrates an example sequence of data arrays foranalyzing in accordance with the present invention;

[0013]FIG. 3 illustrates an example of a simplified data structuregenerated by the method of FIG. 1;

[0014]FIG. 4 illustrates a flow diagram of a method of analyzing datauseful in the method of FIG. 1;

[0015]FIG. 5 illustrates a visual plot generated in accorance with themethod of FIG. 1;

[0016]FIG. 6 illustrates a cross-correlogram generated in accordancewith the method of FIG. 1; and

[0017]FIG. 7 illustraes a correlation map generated in accordance withthe method of FIG. 1.

DESCRIPTION OF THE PREFERRED EMBODIMENT

[0018] Referring to FIG. 1, there is shown a flow diagram represetningan exemplary method for analyzing a sequence of data arrays inaccordance with the present invention. For purposes of this description,the sequence of data arrays operated upon corresponds to a series of twodimensional optical images of neuronal cell slices, such as a slice ofbrain tissue, captured at a fixed interval of time. Thus, the input datais a series of two dimensional data arrays, with each dimensioncorresponding to a spatial dimension and each element of the data arraycorresponding to fluorescence level or other optical measure of activityin the imaged neuronal cell slice. Each data array in the seriescorresponds to image data at a different instant in time, with theimages taken at fixed intervals of time. The format of this input datawill be discussed further herein with reference to FIG. 2. It will beunderstood that the present invention is not limited to such data. Forexample, the input data could correspond to expression levels of geneswithin a population of subjects. Other potential input data sets will beapparent to one of ordinary skill in the art.

[0019] In the exemplary embodiment, performance of the method isassisted by a general purpose computer adapted to operate the MAC-OSoperating system and to interpret program code written in InteractiveData Language (“IDL”) version 5.1 or later, developed by ResearchSystems, Inc. The IDL program code of the exemplary embodiment isappended hereto as Appendices A, B and C described further herein. Otheroperating systems and programming languages could be used to perform thesteps of the exemplary embodiment without departing from the scope ofthe invention, and the modifications necessary to make such a changewill be apparent to one of ordinary skill in the art.

[0020] In step 101, a selection of at least one type of region ofinterest of the input data arrays is made. This selection may be mademanually, automatically based on certain criteria relevant to theparticular data being analyzed, or predetermined. In the exemplaryembodiment, there is only one relevant type of region of interest, andthat is predetermined to be a neuron in the image data. If other datawere to be analyzed, the relevant type of region of interest may bedifferent and there may be multiple such types of regions.

[0021] In step 103, a selection of one or more regions of interest foreach of the selected types of regions of interest is made. To furtherunderstand this step in the exemplary embodiment, reference is made toFIG. 2 where an example of an input data array of a sequence of twodimensional image data is shown. Data array 201 is a array of pictureelement (pixel) data corresponding to an image acquired at time t=1. Ascan be seen, in this data array, there are sixteen pixels 207, eachrepresenting the optical intensity at a corresponding spatial region ofthe original image. Although only sixteen pixels are shown here, it willbe understood that actual data will have many more pixels, correspondingto the resolution of the imaging device. In the preferred embodiment,the imaging device is a charge coupled device (CCD) camera which iscapable of converting an optical image into digital pixel data.

[0022] A fixed interval of time after the image array 201 is acquired,second image array 203 is acquired. The process of acquiring data imagescontinues at fixed intervals until final image array 205 is acquired attime t=N. In this example, time t=1 corresponds to the time the firstimage was take and time t=N corresponds to the time the last image wastaken. The fixed time interval and number of images acquired (N) can beadjusted to maximize time resolution by reducing the fixed timeinterval. By reducing the time interval and increasing N, the amount ofdata collected will increase accordingly, which may lead to longeranalysis times.

[0023] Returning to FIG. 1, the step of selecting a region of interest103 consists of selecting an area of the image data where a neuron ispresent. For example, in FIG. 2, the circles 209 and 223 representneurons in the original image data that are the regions of interest.Accordingly, the selecting step 103 consists of selecting the image dataat pixel locations 211 and 217 as regions of interest. In the preferredembodiment, the step is performed manually by a user viewing an imagecorresponding to image data frame 201 or other image data frame andselecting the area where the neuron is visible. Because each image pixeldata array in the input data sequence corresponds to the same spatialarea over time, and because the neurons do not move over the time ofobservation, the pixels of interest in all subsequent images arrays canalso be identified. Thus, in FIG. 2, it can be seen that pixel 219 inimage pixel array 203 and pixel 221 in image pixel array 205 representthe same neuron as pixel 217 in image array 201. Similarly, pixels 211,213, and 215 all represent the same neuron of interest.

[0024] In step 105, the data corresponding to the selected regions ofinterest are tranformed into a simplified data array. This simplifieddata array contains only the pixel intensity data from the originalsequence of pixel data arrays that corresponds to the regions ofinterest. An example of such a simplified data array is shown in FIG. 3.There, each data row corresponds to one of the selected regions ofinterest from the original sequence of pixel data arrays, while eachcolumn represents a different image pixel array in the original sequenceof image pixel arrays. Each element in the simplified data arraycontains the intensity value of pixels in the relevant region ofinterest at a particular time. Thus, in step 105, the intensity data forpixel 211 in image pixel array 201 is placed in the portion ofsimplified data array 300 designated as array element 301, while pixelintensity data 217 is placed in array element 307. Similarly, pixelintensity data 213 and 219 are placed in array elements 303 and 309respectively. The process continues until pixel intensity data 215 and221 are placed in elements 305 and 311 respectively. It will beunderstood that if more than two neurons were selected in step 103,simplified array 300 would have more than 2 rows. If a neuron selectedin step 103 spans more than one pixel position in the original sequenceof image arrays, the average pixel intensity of the pixels correspondingto each selected neuron can be stored in the elements of simplified dataarray 300. If all of the data in the original sequence of data arrayscorresponds to regions of interest, the transformation step wouldconsists only of storing the input data into a data array having thedimensions described and no data from the original sequence need beignored or discarded during the transformation step.

[0025] In step 107, events of interest in the simplified data array 300are detected. In the exemplarly embodiment an event of interest isdetected by calculating a statistical mean and standard deviation forall pixel intensity data corresponding to a particular region ofinterest. Thus, where the pixel intensity data is contained in thesimplified array 300, a mean and standard deviation is calculated forall data pixel intensity in each row of the simplified array. An eventis then detected where the pixel intensity data for a particular regionof interest exceeds the mean for all data in the region of interest by apredetermined number of standard deviations. If activity were defined bya drop in intensity rather than an increase in intensity, the eventcould be detected by examining the pixel intensity data in a certainregion of interest for an entry where the intensity is less than themean for all data in the region of interest by a predeterminied numberof standard deviations. The number of standard deviations may be enteredby a user before the calculations are preformed, or a default number maybe used, such as two or three. In this fashion, the method will detectthose instances in time where the pixel intensity is much higher thanthe average intensity, thus suggesting neuron activity has occurred.

[0026] In another exemplary embodiment, an event is detected by lookingfor pixel intensities that exceed previous pixel intensities of the sameregions of interest by a threshold amount. Thus, for example, if thepixel intensity stored in data element 309 exceeded the pixel intensitystored in data element 307 by a certain percentage, an event is said tohave occurred at the time corresponding to pixel position 307 (i.e.t=1). Again, if an event were indicated by a drop in intensity ratherthan an increase, the detection step would involve looking for pixelintensity that are less than previous pixel intensities of the sameregion of interest by the threshold amount. The threshold amount can bespecified by a user before the calculations are performed, or a defaultnumber can be used such as twenty percent. The detection can occur overmany time periods, for example, the data corresponding to the imagetaken at time t=6 could be compared to the image taken at time t=1 tosee if an increase beyond the threshold amount has occurred. This wouldbe useful to detect events that occur gradually over time rather thanrelatively instantaneously.

[0027] In step 109, the results of detection step 107 are stored in asecond simplified array. For this purpose, the second simplified arrayis identical to the first simplified array illustrated in FIG. 3;however, the data stored in the second simplified array is binary ratherthan pixel intensity values. Thus, the entries in the second simplifiedarray would be 1 or 0 (or yes or no), corresponding to whether an eventof interest occurred in that region of interest at the correspondingtime.

[0028] In step 111, the stored data is analyzed. In the preferredembodiment, the data is analyzed to determine whether various neuronsare correlated (i.e. whether they are coactive), the strength of thosecorrelations (i.e. how often they are coactive relative to how manytimes each neuron or one of the neurons is active), how significant thecorrelations are (i.e. whether the correlation is stronger than would beexpected if from a random data set) and the behavior of the entireneuron population.

[0029] In the exemplary embodiment, the data is analyzed by plotting atleast a portion of the data contained in the first simplified data array300. For example, pixel intensity for one neuron can be plotted overtime. Pixel intensities for all neurons could also be plotted over time,either in separate plot windows or superimposed on the same plot window.Additionally, the pixel intensities for all neurons could be averagedand plotted over time to show global behavior of the systems. FIG. 5illustrates three possible plots 501, 502, 503 of pixel intensity overtime.

[0030] In another exemplary embodiment illustrated in FIG. 4, the datain the second simplified array is analyzed to determine the number ofcoactive events in the dataset and the statistical significance of thoseevents. In step 401, a random distribution of neuron activity isgenerated. The random data is generated by shifting the data in each rowof the second simplified array by a random amount. In step 403, thenumber of coactive events in the random dataset is counted. This processis repeated numerous time to generate a random distribution. The numberof random trials may be set by the user or a default number of randomtrials may be conducted, such as 1000.

[0031] Counting coactive events for this purpose means counting allinstances where two neurons are coactive. Coactive events for thispurpose means events of interest that occurred in two neurons at thesame time, or within a specified number of time intervals from eachother. Thus, if the specified number of time intervals is one, then if aevent occurred in neuron 1 at time t=1 301 and an event occurred inneuron 2 at time t=2 309, those events would be considered coactive. Thetime interval may be specified by a user before coactive events arecounted, or may be a default setting such as two time intervals.

[0032] Once the random trials have been completed and a randomdistribution of coactive events generated, the actual number of coactiveevents in the data is calculated in step 405 using the same countingmethodology was used to count coactive events in the random trials. Theactual number of coactive events is then superimposed on a plot of therandom distribution. The statistical significance of the coactive eventsis determined in step 407 by calculating the area under the distributioncurve to the right of the number of actual coactive events in the data.This result, termed the “p-value” represents the probability that thenumber of detected coactive events in the actual data is produced by arandom neuron activity.

[0033] In a further exemplary embodiment, a random distribution ofactivity is generated as previously described, except the only coactiveevents that are counted in steps 403 and 405 are those where apredetermined number of neurons are coactive. The predetermined amountof coactive neurons may be specified by a user or a predetermineddefault value such as four may be used. Additionally, it may bespecified whether exactly that many coactive events must be present orat least that many coactive events must be present to be considered acoactive event for counting. Thus, the embodiment allows instances ofmultiple neurons active simultaneously (rather than simply two neuronsactive simultaneously) to be counted and the statistical significance ofthat number to be reported. In this exemplary embodiment, the randomdistribution and actual number of coactive events are plotted. Thestatistical significance of the actual number of coactive events iscalculated using the formula: C_(rand)/N_(rand) where C_(rand) is thenumber of random trials that resulted in more coactive matches than theactual data set and N_(rand) is the total number of random trials usedto generate the random distribution, and is reported to a user.Additionally, a network map may be plotted showing the spatial locationsof the coactive neurons with lines between those that were coactive. Thespatial locations of the active neurons were those specified by the userduring neuron selection step 103 in FIG. 1.

[0034] In a still further exemplary embodiment, a random distribution ofneuron activity is generated as previously described except the onlycoactive events that are counted in steps 403 and 405 are those where atleast two neurons are active a predetermined number times throughout thedataset. The number of times the two or more neurons must be active canbe specified by a user or a default number such as two may be used. Inthis exemplary embodiment, the random distribution and actual number ofcoactive events are plotted. The statistical significance of the actualnumber of coactive events is calculated using the formula:C_(rand)/N_(rand) where C_(rand) is the number of random trials thatresulted in more coactive matches than the actual data set and N_(rand)is the total number of random trials used to generate the randomdistribution, and is reported to a user. Additionally, a network map maybe plotted showing the spatial locations of the coactive neurons withlines between those neurons that were coactive the specified number oftimes. The spatial locations of the active neurons were those specifiedby the user during neuron selection step 103 in FIG. 1.

[0035] In yet another preferred embodiment, a correlation map isplotted. To plot the correlation map, a correlation coefficient array isfirst generated for all of the neurons. The correlation coefficients aredefined as C(A,B)=number of times neuron A and B are coactive divided bythe number of times neuron A is active. For this purpose, coactive meansactive at the same time, or within a specified number of time intervalsof each other. The number of time intervals may be specified by a useror a default number such as one time increment may be used. The numberof correlation coefficients will be equal to the square of the number ofneurons selected in step 103 in FIG. 1. A correlation map is then drawnconsisting of a map of all active neurons with lines between each pairof neurons having a line thickness proportional to the correlationcoefficient of those two neurons. An example of such a correlation mapis illustrated in FIG. 7. There, the thickness of line 707 isproportional to the magnitude of the correlation coefficent for neurons701 and 703. Line 709, which appears thicker than line 707, indicatesthat the corrlation between neurons 703 and 705 is stronger than thecorrelation between neurons 701 and 703. The correlation map may besuperimposed on an image array selected from the original input data. Ifthe correlation coefficient is below a predetermined threshold amount,the corresponding line may be omitted from the correlation map. Thepredetermined threshold amount may be specified by a user or a defaultthreshold may be used.

[0036] In still another exemplary embodiment, a cross correlogram isdrawn to show potential causality among neuron activity. This can beused to find neurons with events that consistently precede or followevents of another neuron. A cross correlogram simply creates a histogramof the time intervals between events in two specified neurons. A line ofheight proportional to the number of times the first neuron is activeone time interval following activity by the second neuron is plotted at+1 on the x-axis of the histogram. A line of height proportional to thenumber of times the first neuron is active two time intervals followingactivity by the second neuron is plotted at +2 on the x-axis of thehistogram, and so on. An example of such a cross correlogram isillustrated in FIG. 6. The line 601 represents the number of occasionsthe first and second neurons were coactive, while line 607 representsthe number of times the first neuron was active three time intervalsafter the second neuron was active. A cross correlogram may be performedon a single neuron to detect temporal characteristics in the neuron'sfiring such as the fact that the neuron is active with a period of everythree time intervals a certain number of times during the observation.

[0037] IDL code implementing all of the preceding steps of the exemplaryembodiment is attached hereto as Appendix A. The procedure “multicell”and “multicell_event” are the main procedures. All relevantsub-procedures and functions are also included in Appendix A.

[0038] In another exemplary embodiment of step 111 in FIG. 1, the datais analyzed by finding a hidden Markov state sequence from the secondsimplified data array. This embodiment uses the principal of HiddenMarkov modeling described in Rabiner, A Tutorial on Hidden Markov Modelsand Selected Applications in Speech Recognition, Proceedings of theIEEE, vol. 77 pp. 257-286 (1989). Essentially, a Markov model is a wayof modeling a series of observations as functions of a series of Markovstates. Each Markov state has an associated probability function whichdetermines the likelihood of moving from that state directly to anyother state. Moreover there is an associated initial probability matrixwhich determines the likelihood the system will begin in any particularMarkov state. In a hidden Markov Model, the Markov states are notdirectly observable. Instead, each state has an associated probabilityof producing a particular observable event. A complete Markov modelrequires the specification of the number of Markov states (N); thenumber of producible observations per state (M); the state transitionprobability matrix (A), where each element a_(ij) of A is theprobability of moving directly from state i to state j; the observationprobability distribution (B), where each element b_(i)(k) of B is theprobability of producing observation k while in state i; and the initialstate distribution (P), where each element p_(i) of P is the probabilityof beginning the Markov sequence in state i.

[0039] In the exemplary embodiment, it is assumed that the number oftimes a neuron is active within each Markov state follows the Poissondistribution. Thus, each neuron in each state has an associated PoissonLambda parameter, which can be understood in the exemplary embodiment tocorrespond to the neuron's average firing rate within the given Markovstate. The set of all of these Lambda parameters is then assumed to bethe B matrix. Given estimations of the Markov Model parameters, themethod uses the Viterbi algorithm to find the single best statesequence, i.e. the state sequence that most likely occurred to generatethe observed results. The parameter N may be selected by the user or adefault number such as 4 states may be used. The Viterbi algorthim isdescribed as follows:

[0040] Initialization

δ₁(i)=p _(i) b _(i)(O ₁)1≦i<N,

ψ₁(i)=0,

[0041] where δ_(t)(i) is the highest probability along a single path attime t that accounts for the first t observations and ends in state i,and ψ is used to store the argument which maximizes δ_(t)(i).

[0042] Recursion: $\begin{matrix}{{\delta_{t}(j)} = {\max\limits_{1 \leq i \leq N}{\left\lbrack {{\delta_{t - 1}(i)}a_{ij}} \right\rbrack {b_{i}\left( O_{i} \right)}}}} & {2 \leq i \leq T} \\\quad & {{1 \leq j \leq N},} \\\left. {{\psi_{t}(j)} = {\arg \quad \underset{1 \leq i \leq N}{\max\left\lbrack \delta_{t - 1} \right.}(i)a_{ij}}} \right\rbrack & {2 \leq t \leq T} \\\quad & {{1 \leq j \leq N},}\end{matrix}$

[0043] Termination: $\begin{matrix}{{p^{*} = {\max\limits_{1 \leq i \leq N}\left\lbrack {\delta_{T}(i)} \right\rbrack}},} \\{{q_{T}^{*} = {\underset{1 \leq i \leq N}{\arg \quad \max}\left\lbrack {\delta_{T}(i)} \right\rbrack}},}\end{matrix}$

[0044] Path (Backtracking):q_(t)^(*) = ψ_(t + 1)(q_(t + 1)^(*))t = T − 1, T − 2, …  , 1.

[0045] Once a possible state sequence is generated, a cross-correlogrambetween neurons in a predetermined state can be plotted using themethodology previously described. The state may be selected by the useror a default state such as the first state may be used.

[0046] IDL code implementing the preceding embodiment involving thehidden Markov model is attached hereto as Appendix B. The procedure“hidden_markov” and “hidden_markov_event” are the main procedures. Allrelevant sub-procedures and functions are also included in Appendix B.

[0047] In another exemplary embodiment the data is analyzed byperforming a singular valued decomposition (SVD) on the data in thefirst simplified array formed in step 105. In this embodiment, steps 107and 109 may be skipped. In a singular valued decomposition, the data setis reduced from N dimensions, where N is the number of selected neurons,to d dimensions, where d is specified and is less than N. The SVDalgorithm, which is well known to one of ordinary skill in the art andis specified in the code in Appendix C, fits the observed data to a datamodel that is a linear combination of any d number of functions of thespaces of data (such as time and location). The SVD algorithm discardsthe eigenmodes corresponding to the smallest N-d eigenvalues. In thisembodiment, the result that is plotted for visual analysis is the levelof each neuron's contribution to each of the calculated d modes where ahigher contribution to the mode is a larger number on the y-axis of theplot.

[0048] In a further exemplary embodiment not shown in FIG. 1, the SVDcalculation described may be performed on the data in the firstsimplified data array before step 107. The data corresponding to thefirst eigenmode of the SVD, which will often correspond to noise in theoriginal data, may then be removed from the first simplified data array.The modified first simplified data array, with noise removed, may thenbe processed beginning with step 107 in FIG. 1 as previously described.In this fashion, the data analysis, such as the HMM analysis could beperformed on data with less noise, generating more useful results.

[0049] IDL code implementing the preceding embodiment involving thesingular value decomposition algorithm is attached hereto as Appendix C.The procedure svd_gui and svd_gui_event are the main procedures. Allrelevant sub-procedures and functions are also included in Appendix C.

[0050] Although the present invention has been described in detail, itshould be understood that various changes, substitutions and alterationscan be made hereto without departing from the scope or spirit of theinvention as defined by the appended claims.

1. A method for analyzing a sequence of data arrays comprising the stepsof: (a) selecting at least one type of region of interest of said dataarrays; (b) selecting at least one region of interest for each of saidat least one selected type of region of interest selected in step (a)from said data arrays; (c) transforming said sequence of data arraysinto a first simplified data array having a first dimension equal to thenumber of said at least one region of interest selected in step (b), asecond dimension equal to the number of data arrays in said sequence,and a third dimension equal to the number of said selected types ofregions of interest; (d) detecting events of interest in said at leastone selected region of interest; (e) storing said detected events ofinterest in a second simplified data array of binary data, having thesame dimensions as said first simplified data array; and (f) analyzingdata in one of the data arrays selected from the group consisting ofsaid first simplified data array and said second simplified data array,to determine relationships between said detected events of interest. 2.The method of claim 1, wherein said sequence of data arrays comprises aseries of two dimensional arrays corresponding to a time series of twodimensional observations of an object.
 3. The method of claim 1, whereinsaid object is neuronal cell slice containing a plurality of neurons andwherein said step of selecting a region of interest comprises selectingone or more neurons in said series of two dimensional observations. 4.The method of claim 2, wherein one type of region of interest isselected in step (a) and wherein said step of selecting at least oneregion of interest comprises selecting at least one portion of saidsequence of data arrays that corresponds to a particular spatial regionof said two dimensional observations of said object.
 5. The method ofclaim 4, wherein said transforming step comprises extracting data fromeach array in said sequence of data arrays that corresponds to saidparticular spatial region of interest and storing said data in saidfirst simplified array, each data entry having an associated firstdimensional index and an associated second dimensional index, whereinsaid first dimensional index is between one and the number of spatialregions corresponding to selected selected regions of interest of saidsequence of data arrays, and said second dimensional index is betweenone and the number of two dimensional observations of said object insaid sequence of data arrays.
 6. The method of claim 5, wherein saidstep of detecting events of interest comprises calculating a statisticalmean and statistical standard deviation from a data populationconsisting of all entries in said first simplified array havingidentical first dimensional indexes, for each of said first dimensionalindexes; determining for each entry in said first simplified arraywhether said entry exceeds, by a predetermined number of said standarddeviation associated with said entry, the mean associated with saidentry and denominating such a data entry an event.
 7. The method ofclaim 6, wherein entries in said second simplified data array have thesame associated first and second dimensional indexes as correspondingentries in said first simplified data array and wherein said storingsaid detected events of interests comprises storing a one in said secondsimplified array when the data entry with the corresponding first andsecond dimensional indexes in said first simplified array is denominatedan event and storing a zero in said second simplified array otherwise.8. The method of claim 5, wherein said detecting events of interestcomprises determining whether a first data entry in said firstsimplified array exceeds, by a threshold amount, a second data entry insaid first simplified array wherein said second data entry has anidentical first dimensional index as said first data entry and a seconddimensional index corresponding to an earlier point in time than saidfirst data entry and denominating said second data entry an event. 9.The method of claim 8, wherein entries in said second simplified dataarray have the same associated first and second dimensional indexes ascorresponding entries in said first simplified data array and whereinsaid storing said detected events of interests comprises storing a onein said second simplified array when the data entry with thecorresponding first and second dimensional indexes in said firstsimplified array is denominated an event and storing a zero in saidsecond simplified array otherwise.
 10. The method of claim 1, whereinsaid step of analyzing comprises plotting at least a portion of saiddata in said first simplified data for visual analysis.
 11. The methodof claim 1, wherein said step of analyzing comprises detecting saidevents of interest that are coactive and determining whether the numberof coactive events is statistically significant.
 12. The method of claim11, wherein said step of detecting events of interest that are coactivecomprises detecting instances where said events of interest are detectedin two or more of said regions of interest simultaneously.
 13. Themethod of claim 11, wherein said step of detecting events of interestthat are coactive comprises detecting instances were events of interestare detected in two of said regions of interest simultaneously at aplurality of locations along said second dimension of said secondsimplified data array.
 14. The method of claim 1, wherein said step ofanalyzing comprises calculating a strength of correlation between atleast two regions of interest based on the number of coactive events ofinterest occurring in said at least two regions of interest anddisplaying a correlation map illustrating the strength of correlationbetween said regions of interest by lines connecting said regions ofinterest wherein the thickness of each of the lines is proportional tosaid calculated strength of correlation between respective regions ofinterest connected by the line.
 15. The method of claim 1, wherein saidstep of analyzing comprises displaying a cross-correlogram betweenevents of interest occurring in at least one of said regions ofinterest.
 16. The method of claim 1, wherein said step of analyzingcomprises detecting at least one hidden Markov state sequence from saidsecond simplified data array.
 17. The method of claim 16, wherein saidstep of analyzing further comprises displaying a cross-correlogrambetween events of interest occurring in one of said regions of interestwhile said region of interest is in one of said detected hidden Markovstates.
 18. The method of claim 1, further comprising: before said stepof detecting, performing a singular valued decomposition on said data insaid first simplified data array to calculate a predetermined number ofeigenmodes; modifying said data in said first simplified data array byremoving the data that corresponds to the first of said predeterminednumber of eigenmodes; and storing said modified data into said firstsimplified data array.
 19. A method for analyzing a sequence of dataarrays comprising the steps of: (a) selecting at least one type ofregion of interest of said data arrays; (b) selecting at least oneregion of interest for each of said at least one type of region ofinterest selected in step (b) from said data arrays; (c) transformingsaid sequence of data arrays into a first simplified data array having afirst dimension equal to the number of said selected regions ofinterest, a second dimension equal to the number of data arrays in saidsequence, and a third dimension equal to the number of said selectedtypes of regions of interest; and (d) performing a singular valueddecomposition on said first simplified data array to determinerelationships between said regions of interest.
 20. A system foranalyzing a sequence of data arrays comprising in a data processor: aregion type selector for selecting at least one type of region ofinterest of said data arrays; a region selector for selecting at leastone region of interest for each of said selected type of region ofinterest from said data arrays; a first data transformer fortransforming said sequence of data arrays into a first simplified dataarray having a first dimension equal to the number of said selectedregions of interest, a second dimension equal to the number of dataarrays in said sequence, and a third dimension equal to the number ofsaid selected types of regions of interest; an event detector fordetecting events of interest in said regions of interest; a second datatransformer for storing said detected events of interest into a secondsimplified data array of binary data, having the same dimensions as saidfirst simplified data array; and a data analyzer for analyzing data inone of the data arrays selected from the group consisting of said firstsimplified data array and said second simplified data array, todetermine relationships between said detected events of interest. 21.The system of claim 20, wherein said sequence of data arrays comprises aseries of two dimensional arrays corresponding to a time series of twodimensional observations of an object.
 22. The system of claim 21,wherein said object is neuronal cell slice containing a plurality ofneurons and wherein said step of selecting a region of interestcomprises selecting one or more neurons in said series of twodimensional observations.
 23. The system of claim 21, wherein saidregion type selector selects one type of region of interest and whereinsaid region selector selects at least one portion of said sequence ofdata arrays that corresponds to a particular spatial region of said twodimensional observations of said object.
 24. The system of claim 23,wherein said region selector receives coordinates corresponding to saidparticular spatial region from a user.
 25. The system of claim 23,wherein said first data transformer extracts data from each array insaid sequence of data arrays that corresponds to said particular spatialregion of interest and stores said data in said first simplified array,wherein each data entry in said first simplified array has an associatedfirst dimensional index and an associated second dimensional index,wherein said first dimensional index is between one and the number ofspatial regions corresponding to selected regions of interest of saidseeuence of data arrays and said second dimensional index is between oneand the number of two dimensional observations of said object in saidsequence of data arrays.
 26. The system of claim 25, wherein said eventdetector furthe comprises: a statistical calculator for calculating astatistical mean and statistical standard deviation from a datapopulation consisting of all entries in said first simplified data arrayhaving identical first dimensional indexes, for each of said firstdimensional indexes; and a comparator for determining for each entry insaid first simplified array whether said entry exceeds, by apredetermined number of said standard deviations associated with saidentry the mean associated with said entry and denominating such a dataentry an event.
 27. The system of claim 26, wherein said second datatransformer stores entries in said second simplified data array havingthe same associated first and second dimensional index as correspondingentries in said first simplified data array and wherein said second datatransformer stores a one in said second simplified array when the dataentry with corresponding first and second dimensional indexes in saidfirst simplified array is denominated an event and stores a zero in saidsecond simplified data array otherwise.
 28. The system of claim 25,wherein said event detector determines whether a first data entry insaid first simplified array exceeds, by a threshold amount, a seconddata entry in said first simplified data array, wherein said second dataentry has an identical first dimensional index as said first data entryand a second dimensional index corresponding to an earlier point in timethan said first data entry, and denominates said second data entry anevent.
 29. The system of claim 28, wherein said second data transformerstores entries in said second simplified data array having the sameassociated first and second dimensional index as corresponding entriesin said first simplified data array and wherein said second datatransformer stores a one in said second simplified array when the dataentry with corresponding first and second dimensional indexes in saidfirst simplified array is denominated an event and stores a zero in saidsecond simplified data array otherwise.
 30. The system of claim 20,wherein said data analyzer plots at least a portion of said data in saidfirst simplified array for visual analysis.
 31. The system of claim 20,wherein said data analyzer detects said events of interest that arecoactive and determines whether the number of coactive events isstatistically significant.
 32. The system of claim 31, wherein said dataanalyzer detects said events of interest that are coactive comprisesoperability to detect instances where said events of interest aredetected in two or more of said regions of interest simultaneously. 33.The system of claim 31, wherein said data analyzer detects instanceswhere events of interest are detected in two of said regions of interestsimultaneously at a plurality of locations along said second dimensionof said second simplified data array.
 34. The system of claim 20,wherein said data analyzer calculates a strength of correlation betweenat least two regions of interest based on the number of coactive eventsof interest occurring in said at least two regions of interest anddisplays a correlation map illustrating the strength of correlationbetween said regions of interest by lines connecting said regions ofinterest wherein the thickness of each of the lines is proportional tosaid calculated strength of correlation between respective regions ofinterest connected by the line.
 35. The system of claim 20, wherein saiddata analyzer displays a cross-correlogram between events of interestoccurring in at least one of said regions of interest.
 36. The system ofclaim 20, wherein said data analyzer detects at least one hidden Markovstate sequence from said second simplified data array.
 37. The system ofclaim 36, wherein said data analyzer displays a cross-correlogrambetween events of interest occurring in one of said regions of interestwhile said region of interest is in one of said detected hidden Markovstates.
 38. The system of claim 20, wherein said system furthercomprises: a decomposer to perform a singular valued decomposition onsaid data in said first simplified data array and calculating apredetermined number of eigenmodes; a data modifier for modifying saiddata said first simplified data array by removing the data thatcorresponds to the first of said predetermined number of eigenmodes; anddata storage for storing said modified data into said first simplifieddata array.
 39. A system for analyzing a sequence of data arrayscomprising in a data processor: a region type selector for selecting atleast one type of region of interest of said data arrays; a regionselector for selecting at least one region of interest for each of saidselected type of region of interest from said data arrays; a first datatransformer for tranforming said sequence of data arrays into a firstsimplified data array having a first dimension equal to the number ofsaid selected regions of interest, a second dimension equal to thenumber of data arrays in said sequence, and a third dimension equal tothe number of said selected types of regions of interest; a decomposerfor performing a singular value decomposition on said first simplifieddata array to determine relationship between said regions of interest.